//
//  main.m
//  06-调研NSDate
//
//  Created by LL.F on 16/7/11.
//  Copyright © 2016年 LL.F. All rights reserved.
//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    
    /*
     *       NSDate
     */
    
    // 1. 计算当前时间和一个固定时间的差值,如果差值在60秒内,输出"刚刚",如果在60秒外3600秒内,输出"xx分钟前",如果3600秒外, 3600*24秒内,输出"xx小时前"
    
    // 当前时间
    NSDate *currentTime = [NSDate date];
    // 固定时间
    NSDate *date = [NSDate dateWithTimeIntervalSinceNow:-7200];//负数代表当前时间之前的秒数
    NSTimeInterval differenceValue = [currentTime timeIntervalSinceDate: date];
    if (differenceValue <= 60) {
        NSLog(@"刚刚");
    } else  if ( differenceValue <= 3600 ) {
        NSLog(@"%.0lf分钟前", differenceValue / 60);
    } else if ( differenceValue <= 3600 * 24) {
        NSLog(@"%.0lf小时前", differenceValue / 3600);
    }
    
    // 2. 将字符串@"2016年04月01日 01点20分18秒"转换为NSDate对象。
    
    NSDateFormatter *dateFormater = [[NSDateFormatter alloc] init];
    [dateFormater setDateFormat:@"yyyy年MM月dd日 HH点mm分ss秒"];
    NSString *dateString = @"2016年04月01日 01点20分18秒";
    NSDate *standardDate = [dateFormater dateFromString:dateString];
    NSLog(@"%@", standardDate);//转过来的时间会被回归到零时区的时间
    NSDate *newDate = [standardDate dateByAddingTimeInterval:8*60*60];//这是北京时间, 在标准时间下加上八小时
    NSLog(@"%@", newDate);

    // 3. 将1468232420转成日期类型
    
//    NSDate *date123 = [NSDate date];
//    NSTimeInterval time = [date123 timeIntervalSince1970];
//    NSLog(@"%f", time);
//    NSLog(@"%@", [dateFormater stringFromDate:date123])  ;
    
    NSDate *data = [NSDate dateWithTimeIntervalSince1970:1468232420];
    NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
    [formatter setDateFormat:@"yyyy-MM-dd HH-mm-ss"];
    NSString *string = [formatter stringFromDate:data];
    NSLog(@"%@", string);

    // 4. 研究NSDateComponents
    // 5. 预习内存管理, 整理今天的代码
    
    return 0;
}
